visible surface detection methods